package lesson02_02;

public class TestPrimitive {
    public static void main(String[] args){
        // 1 Byte, [-128,127] [-2^7, 2^7-1]
        byte byteVar = 127;
        // 2 Byte, [-2^15, 2^15-1]
        short shortVar = 32767;
        // 4 Byte
        int intVar = 32768;
        // 8 Byte, 字面量 32768L，默认是 int类型， 加个L，表示长整型
        long longVar = 32768L;
        // 4 Byte, 字面量 10.1F, 加个F/f，表示长整型
        float floatVar = 10.1F;
        // 8 Byte,
        double doubleVar = 10.1;
        // 2 Byte, 基于 Unicode 编码， 包含了所用文字和字符
        char charVar = 'a';
        // 1 Byte, 只有两个值， true | false
        boolean booleanVar = true;

        // 数据类型 隐式转换： int -> double （4->8), 小范围类型 可以自动转换成 大范围类型
        double result1 = intVar;
        // 数据类型 强制转换： float -> long， 大范围类型 不可以， 压缩会精度丢失
        long result2 =(long) floatVar;
    }
}
